<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <button id="btn">stopSetInter</button>
    <script>
        // const data = [
        //   { userId: 8, title: 'tit1' },
        //   { userId: 12, title: 'tits' },
        //   { userId: 18, title: 'titz' },
        //   { userId: 22, title: 'tit2' }
        // ]
        // // 查找函数

        // function find(data) {
        //     if (!Array.isArray(data)) {
        //       console.log('请传入数组');
        //       return
        //     }
        //     Array.prototype.where = function (options) {
        //       // 过滤
        //       var _this = this
        //       if(!Object.keys(options).every(i => _this.map(a => !!a[i]))) {
        //         console.log('不存在此项')
        //         return this
        //       }

        //       const arr = _this.filter(item => {
        //         for(let val of Object.keys(options)) {
        //           return options[val].test(item[val])
        //         }
        //       })
        //       return arr
        //     }
        //     Array.prototype.orderBy = function (key, sort) {
        //       var _this = this
        //       if (sort === 'desc') {
        //         return this.map(i => i[key]).sort((a, b) => b - a).map(item => {
        //         //   _this.filter
        //           for(let val of _this) {
        //             if(val[key] === item) return val
        //           }
        //         })
        //       } else if (sort === 'asce') {
        //         return this.map(i => i[key]).sort((a, b) => a - b).map(item => {
        //         //   _this.filter
        //           for(let val of _this) {
        //             if(val[key] === item) return val
        //           }
        //         })
        //       } else {
        //           return _this
        //       }
        //     }
        //     return (function() {
        //       return data
        //     })()
        // }
        // const result = find(data).where({ title: /\d$/ }).orderBy('userId', 'desc')
        // 写一个 mySetInterVal(fn, a, b),每次间隔 a,a+b,a+2b,...,a+nb 的时间，然后写一个 myClear

        // function mySetInterValReturn() {
        //   let timer = null
        //   function stareSetInterVal(fn, a, b) {
        //     // 执行定时器任务
        //     let count = 0
        //     timer = setInterval(() => {
        //       console.log(count, (a + count * b))
        //       count++
        //       fn()
        //     },a + count * b)
        //   }
        //   function stopSetInterVar() {
        //     clearInterval(timer)
        //   }

        //   return { 
        //     mySetInterVal: stareSetInterVal,
        //     myClear: stopSetInterVar
        //   }
        // }

        // const { mySetInterVal, myClear } = mySetInterValReturn()
        
        // // console.log(a)
        // mySetInterVal(() => {
        //   console.log('定时器执行了')
        // }, 1000, 1000)
        
        // document.getElementById('btn').onclick = myClear
        
  
    </script>
</body>
</html>